import type { FieldRule } from 'vant'

const mobileRules: FieldRule[] = [
  { required: true, message: '手机号不能为空' },
  {
    pattern: /^1[3-9]\d{9}$/,
    message: '手机号格式不正确',
    trigger: ['onChange', 'onBlur']
  }
]
const passwordRules: FieldRule[] = [
  { required: true, message: '密码不能为空' },
  {
    // 字母最少有一个,数字最少有五个
    pattern: /^[0-9A-z]{6,22}$/,
    message: '手机号密码长度必须在6-22位之间',
    trigger: ['onChange', 'onBlur']
  }
]
const codeRules: FieldRule[] = [
  { required: true, message: '验证码不能为空' },
  {
    // 字母最少有一个,数字最少有五个
    pattern: /^\d{6}$/,
    message: '验证码长度为6位',
    trigger: ['onChange', 'onBlur']
  }
]
const nameRules: FieldRule[] = [
  { required: true, message: '请输入姓名' },
  { pattern: /^(?:[\u4e00-\u9fa5·]{2,16})$/, message: '中文2-16个字符' }
]

const idCardRules: FieldRule[] = [
  { required: true, message: '请输入身份证号' },
  {
    pattern:
      /^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[\dXx]$/,
    message: '身份证号不正确'
  }
]

export { mobileRules, passwordRules, codeRules, nameRules, idCardRules }
